Eli Zaretskii [Fri, 22 Oct 2021 12:41:00 +0000 (15:41 +0300)]
Fix WebP support on MS-Windows
* src/image.c (WebPDecodeRGBA, WebPDecodeRGB, WebPFree): Use
correct names and argument lists in DEF_DLL_FN; fix typos.
(WebPGetFeaturesInternal): Load this instead of WebPGetFeatures,
which is a static inline function in webp/decode.h.
(WebPGetFeatures): Redirect to call WebPGetFeaturesInternal.
* lisp/term/w32-win.el (dynamic-library-alist): Fix the name of
the WebP symbol.
* configure.ac (HAVE_WEBP): Fix detection of libwebp on MinGW.
* nt/INSTALL.W64:
* nt/INSTALL: Update information about libwebp availability.
Stefan Kangas [Fri, 22 Oct 2021 08:59:01 +0000 (10:59 +0200)]
Add WebP image format support (Bug#51296)
* configure.ac (--with-webp): New option.
(HAVE_WEBP): New variable.
(emacs_config_features): Add webp.
* src/image.c (enum webp_keyword_index) [HAVE_WEBP]: New enum.
(webp_format) [HAVE_WEBP]: New variable.
(webp_image_p, init_webp_functions, webp_load) [HAVE_WEBP]: New
functions for WebP support.
(image_types) [HAVE_WEBP]: Define WebP format.
(syms_of_image) <Qwebp> [HAVE_WEBP]: New DEFSYM. Add image type Qwebp.
* src/Makefile.in (LIBIMAGE): Add WEBP_LIBS.
* lisp/files.el (auto-mode-alist):
* lisp/image-file.el (image-file-name-extensions):
* lisp/image.el (image-type-header-regexps)
(image-type-file-name-regexps, image-type-auto-detectable): Add WebP
support.
* lisp/term/w32-win.el (dynamic-library-alist): Add the libwebp DLL.
* INSTALL:
* admin/CPP-DEFINES:
* doc/lispref/display.texi (Image Formats, Other Image Types):
* nt/INSTALL: Document WebP support.
* test/lisp/image-tests.el (image-find-image)
(image-type-from-file-name): Expand tests.
* test/src/image-tests.el (image-tests--files): Add WebP.
(image-tests-image-size/webp, image-tests-image-mask-p/webp)
(image-tests-image-metadata/webp): New tests.
* test/data/image/black.webp: New file.
Martin Rudalics [Fri, 22 Oct 2021 08:34:49 +0000 (10:34 +0200)]
In 'window-text-pixel-size' use actual mode line heights if wanted (Bug#38181)
* src/xdisp.c (Fwindow_text_pixel_size): Run display_mode_line
when MODE_LINES wants it to take actual mode line heights into
account (Bug#38181).
Stefan Kangas [Fri, 22 Oct 2021 05:41:55 +0000 (07:41 +0200)]
; Revert parts of previous commit
* admin/unidata/unidata-gen.el (unidata-gen-table)
(unidata-gen-table-symbol, unidata-gen-table-integer)
(unidata-gen-table-numeric, unidata-gen-table-word-list)
(unidata-describe-decomposition):
* lisp/composite.el (unicode-category-table):
* lisp/files.el (recover-file):
* lisp/frame.el (frames-on-display-list, frame-background-mode):
* lisp/language/indian.el (script-regexp-alist): Revert parts of
previous commit; it seemed innocent but caused issues.
Stefan Kangas [Thu, 21 Oct 2021 21:35:07 +0000 (23:35 +0200)]
Remove redundant #' before lambda
* admin/unidata/unidata-gen.el (unidata-gen-table)
(unidata-gen-table-symbol, unidata-gen-table-integer)
(unidata-gen-table-numeric, unidata-gen-table-word-list)
(unidata-describe-decomposition):
* lisp/apropos.el (apropos-user-option):
* lisp/bookmark.el (bookmark-bmenu-search):
* lisp/composite.el (unicode-category-table):
* lisp/elec-pair.el (electric-pair--balance-info):
* lisp/electric.el (electric-quote-chars):
* lisp/emulation/cua-base.el (cua-rectangle-mark-key):
* lisp/epa-hook.el (epa-file-encrypt-to):
* lisp/faces.el (face-font-selection-order)
(face-font-family-alternatives, face-font-registry-alternatives)
(face-valid-attribute-values, tty-run-terminal-initialization):
* lisp/files.el (recover-file, file-expand-wildcards):
* lisp/frame.el (frames-on-display-list):
* lisp/help-at-pt.el (help-at-pt-display-when-idle):
* lisp/help-fns.el (help-fns--face-attributes):
* lisp/ido.el (ido-mode, ido-unc-hosts):
* lisp/isearch.el (isearch-highlight-regexp)
(isearch-highlight-lines-matching-regexp):
* lisp/language/indian.el (script-regexp-alist):
* lisp/language/lao.el:
* lisp/leim/quail/ipa.el (ipa-x-sampa-prepend-to-keymap-entry):
* lisp/mh-e/mh-folder.el (mh-process-commands):
* lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
* lisp/ps-mule.el (ps-mule-end-job):
* lisp/ps-print.el (ps-color-scale, ps-background-pages)
(ps-background-text, ps-background-image, ps-background)
(ps-begin-job, ps-print-translation-table):
* lisp/recentf.el (recentf-sort-ascending)
(recentf-sort-descending, recentf-sort-basenames-ascending)
(recentf-sort-basenames-descending)
(recentf-sort-directories-ascending)
(recentf-sort-directories-descending):
* lisp/replace.el (occur-engine-add-prefix):
* lisp/select.el (xselect--encode-string):
* lisp/server.el (server-use-tcp):
* lisp/ses.el (ses-sort-column):
* lisp/sort.el (sort-columns):
* lisp/term/ns-win.el (window-system-initialization):
* lisp/tree-widget.el (tree-widget-image-formats):
* lisp/whitespace.el (whitespace-report-region): Remove redundant #'
before lambda.
Stefan Kangas [Thu, 21 Oct 2021 19:22:51 +0000 (21:22 +0200)]
Add comment on reworking a section in emacs-lisp-intro.texi
* doc/lispintro/emacs-lisp-intro.texi (Body of mark-whole-buffer):
Add comment about how one could rework this section.
Michael Albinus [Thu, 21 Oct 2021 18:04:51 +0000 (20:04 +0200)]
Configure Emacs on emba with debug options
* test/infra/Dockerfile.emba (emacs-base): Install gdb.
(emacs-inotify): Configure debug options.
Lars Ingebrigtsen [Thu, 21 Oct 2021 15:23:46 +0000 (17:23 +0200)]
Actually fix the Pango build problem
* src/gtkutil.c (xg_weight_to_symbol): Don't break the build on
older systems.
Glenn Morris [Thu, 21 Oct 2021 15:02:57 +0000 (08:02 -0700)]
Merge from origin/emacs-28
0545c70c16 (origin/emacs-28) ; * src/keyboard.c (readable_events): Ad...
805ed8d318 Fix todo-mode AOT test failures (bug#51308)
8f42ff31f6 Fix hi-lock AOT test failures (bug#51308)
8002fcd4b9 Fix socks test
4540130312 ; Fix typo
59df93e2dd * lisp/help.el (help--analyze-key): Add new arg BUFFER (bu...
cb8b12b56d Improve docstrings and NEWS item of 'repeat-mode'
06fe499614 * lisp/tab-bar.el (tab-bar-menu-bar): New command (bug#512...
8358da9c4c Display a tab bar item as sunken when appropriate
29fdc65860 Fix tab bar item highlight when a mouse click is dropped
7236592668 Refer to mouse-highlight from make-pointer-invisible docst...
cf4394a397 * etc/PROBLEMS: Add hex codepoint for NO-BREAK SPACE
2d647e88fa Describe how to debug fontconfig issues
c916040921 Adapt Tramp tests
1bb14f93f1 Convert ANSI color definitions in themes to use faces (e.g...
8e7cd29712 Revert "Revert back to using ESC as viper-ESC-key again"
91d71b38a3 Fix inset rectangle corners when sides aren't drawn (bug#5...
5c1a575ef4 Don't use color escape sequences in vc-git-expanded-log-entry
d7f595cc89 Code cleanup in tramp-tests.el
548a5db611 ; etc/NEWS fix wording
# Conflicts:
# etc/NEWS
Lars Ingebrigtsen [Thu, 21 Oct 2021 13:07:08 +0000 (15:07 +0200)]
Fix build on systems with older Pango versions
* src/gtkutil.c (xg_weight_to_symbol): Don't break the build on
older systems.
Lars Ingebrigtsen [Thu, 21 Oct 2021 12:36:50 +0000 (14:36 +0200)]
Fix bold/black in w32_to_fc_weight
* src/w32font.c (w32_to_fc_weight): Use symbols.
Eli Zaretskii [Thu, 21 Oct 2021 07:53:20 +0000 (10:53 +0300)]
; * src/keyboard.c (readable_events): Add a comment.
Lars Ingebrigtsen [Thu, 21 Oct 2021 04:26:30 +0000 (06:26 +0200)]
Fix todo-mode AOT test failures (bug#51308)
Lars Ingebrigtsen [Thu, 21 Oct 2021 04:24:35 +0000 (06:24 +0200)]
Fix hi-lock AOT test failures (bug#51308)
Lars Ingebrigtsen [Thu, 21 Oct 2021 04:06:13 +0000 (06:06 +0200)]
Fix socks test
* test/lisp/net/socks-tests.el (socks-tests-v4-basic): Fix failure
under native-comp (bug#51308).
Lars Ingebrigtsen [Thu, 21 Oct 2021 02:41:35 +0000 (04:41 +0200)]
Add a comment to the Turkish casefiddle test
Lars Ingebrigtsen [Thu, 21 Oct 2021 02:30:02 +0000 (04:30 +0200)]
Support the "medium" font weight
* lisp/faces.el (set-face-attribute): Mention new font weights in
doc string.
* src/font.c (struct table_entry): Allow more synonyms.
(weight_table): Expand to support separating medium and normal
weights. Also add heavy/ultra-heavy and some other variants.
(font_parse_fcname): Support more names.
* src/gtkutil.c (xg_weight_to_symbol): Support all the Pango weights.
(xg_style_to_symbol): Make into functions.
(xg_get_font): Adjust.
* src/w32font.c (w32_to_fc_weight): Use symbols.
* src/xfaces.c (syms_of_xfaces): Add the new symbols.
Stefan Kangas [Wed, 20 Oct 2021 18:03:34 +0000 (20:03 +0200)]
Add some tests for floatfns.c
* test/src/floatfns-tests.el (floatfns-tests-cos)
(floatfns-tests-sin, floatfns-tests-tan, floatfns-tests-isnan)
(floatfns-tests-exp, floatfns-tests-expt, floatfns-tests-log)
(floatfns-tests-sqrt, floatfns-tests-abs, floatfns-tests-logb)
(floatfns-tests-ceiling, floatfns-tests-floor)
(floatfns-tests-round, floatfns-tests-truncate)
(floatfns-tests-fceiling, floatfns-tests-ffloor)
(floatfns-tests-fround, floatfns-tests-ftruncate)
(divide-extreme-sign): New tests.
Stefan Kangas [Wed, 20 Oct 2021 18:52:43 +0000 (20:52 +0200)]
; Fix typo
Juri Linkov [Wed, 20 Oct 2021 17:54:57 +0000 (20:54 +0300)]
* lisp/help.el (help--analyze-key): Add new arg BUFFER (bug#51173).
* lisp/help.el (describe-key): Use BUFFER as arg for help--analyze-key.
(describe-key-briefly): Change arg UNTRANSLATED deprecated in 27.1
to BUFFER.
* lisp/gnus/gnus-art.el (gnus-article-describe-key)
(gnus-article-describe-key-briefly): Call describe-key and
describe-key-briefly with first arg as a cons with raw keys,
and the BUFFER arg set to the current buffer.
Juri Linkov [Wed, 20 Oct 2021 17:16:57 +0000 (20:16 +0300)]
Improve docstrings and NEWS item of 'repeat-mode'
* lisp/repeat.el (repeat-exit-timeout, repeat-echo-function)
(repeat-in-progress, repeat-map): Update docstrings.
Juri Linkov [Wed, 20 Oct 2021 16:50:29 +0000 (19:50 +0300)]
* lisp/tab-bar.el (tab-bar-menu-bar): New command (bug#51247).
(tab-bar-format): Rename option 'tab-bar-format-menu-global' to
'tab-bar-format-menu-bar'.
(tab-bar-format-menu-bar): Rename from 'tab-bar-format-menu-global'.
Po Lu [Wed, 20 Oct 2021 07:55:10 +0000 (15:55 +0800)]
Display a tab bar item as sunken when appropriate
When the mouse pointer is pressed on the tab bar, moved out of the tab
bar, and moved back in, it would be more appropriate to behave like
other programs by displaying the item as sunken.
* src/xdisp.c (note_tab_bar_highlight): Display item as sunken if the
mouse pointer returns to the tab bar down.
Po Lu [Wed, 20 Oct 2021 07:36:59 +0000 (15:36 +0800)]
Fix tab bar item highlight when a mouse click is dropped
* src/xdisp.c (note_mouse_highlight): Clear last_tab_bar_item if the
movement wasn't made on top of the tab bar.
Stefan Kangas [Wed, 20 Oct 2021 14:53:44 +0000 (16:53 +0200)]
Refer to mouse-highlight from make-pointer-invisible docstring
* src/frame.c (syms_of_frame) <Vmake_pointer_invisible>: Doc fix;
add reference to 'mouse-highlight'. (Bug#42889)
Robert Pluim [Wed, 20 Oct 2021 16:27:36 +0000 (18:27 +0200)]
* etc/PROBLEMS: Add hex codepoint for NO-BREAK SPACE
Robert Pluim [Wed, 20 Oct 2021 16:22:40 +0000 (18:22 +0200)]
Describe how to debug fontconfig issues
* etc/PROBLEMS: Add FC_DEBUG usage pointers.
Michael Albinus [Wed, 20 Oct 2021 16:14:00 +0000 (18:14 +0200)]
Adapt Tramp tests
* test/lisp/net/tramp-archive-tests.el (tramp-archive-test45-auto-load):
Adapt code snippet.
* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process)
(tramp-test30-make-process): Adapt tests.
(tramp--test-supports-set-file-modes-p): Renamed from
`tramp--test-supports-file-modes-p'. Adapt all callees.
(tramp-test35-exec-path): Use it.
Robert Pluim [Wed, 20 Oct 2021 09:58:07 +0000 (11:58 +0200)]
; * etc/NEWS: fix typos
Lars Ingebrigtsen [Wed, 20 Oct 2021 09:49:22 +0000 (11:49 +0200)]
Fix typo in previous smerge-mode-map change
* lisp/vc/smerge-mode.el (smerge-mode-map): Fix typo (bug#51303).
Jim Porter [Tue, 19 Oct 2021 23:01:15 +0000 (16:01 -0700)]
Convert ANSI color definitions in themes to use faces (e.g. 'ansi-color-red')
* etc/themes/dichromacy-theme.el:
* etc/themes/leuven-theme.el:
* etc/themes/misterioso-theme.el:
* etc/themes/tango-theme.el:
* etc/themes/tango-dark-theme.el:
* etc/themes/wombat-theme.el: Convert ANSI color definitions to
use faces.
Miha Rihtaršič [Tue, 19 Oct 2021 16:41:13 +0000 (18:41 +0200)]
Avoid excessive specbinding in all-completions
* src/minibuf.c (match_regexps):
(Ftry_completion):
(Fall_completions):
(Ftest_completion): Use fast_string_match_internal to match against
regexps in completion-regexp-list without having to bind
case-fold-search.
Lars Ingebrigtsen [Wed, 20 Oct 2021 08:05:04 +0000 (10:05 +0200)]
Revert "Revert back to using ESC as viper-ESC-key again"
This reverts commit
5d522b430bd5ecfb8f082906cd634883dbb68f3e.
The change led to M-x not working in non-gui Emacsen (bug#51253).
Lars Ingebrigtsen [Wed, 20 Oct 2021 07:38:31 +0000 (09:38 +0200)]
Further fixes for Turkish case changes in unibyte strings
* src/casefiddle.c (struct casing_context): Add new slot to keep
track of what the previous operation was.
(case_character_impl): Set it.
(do_casify_unibyte_string): Use it to handle Turkish correctly.
Lars Ingebrigtsen [Wed, 20 Oct 2021 07:36:25 +0000 (09:36 +0200)]
Add new macro with-locale-environment
* lisp/international/mule-cmds.el (with-locale-environment): New macro.
(current-locale-environment): New variable.
Stefan Kangas [Wed, 20 Oct 2021 01:23:28 +0000 (03:23 +0200)]
Add some tests for fns.c
* test/src/fns-tests.el (fns-tests-identity, fns-tests-random)
(fns-tests-length, fns-tests-safe-length)
(fns-tests-string-bytes): New tests.
Stefan Kangas [Tue, 19 Oct 2021 23:52:26 +0000 (01:52 +0200)]
Remove some XEmacs compat code from custom.el
* lisp/custom.el (deftheme, custom-declare-theme): Remove XEmacs
compat code.
Dmitry Gutov [Tue, 19 Oct 2021 22:03:52 +0000 (01:03 +0300)]
xref.el: Better compatibility with outdated Emacs 28 builds
* lisp/progmodes/xref.el:
Ensure better compatibility with outdated Emacs 28 builds as well
(like the pgtk branch). Bump the version.
Stefan Monnier [Tue, 19 Oct 2021 21:18:05 +0000 (17:18 -0400)]
* doc/lispref/files.texi (File Name Components): Mention GNU "path" convention
Lars Ingebrigtsen [Tue, 19 Oct 2021 21:10:46 +0000 (23:10 +0200)]
Make image-tests work in a no-x build
* test/src/image-tests.el: Make the tests work in a no-x build
(bug#51291).
Lars Ingebrigtsen [Tue, 19 Oct 2021 20:39:00 +0000 (22:39 +0200)]
Tweak how 'align' and 'align-regexp' align text
* lisp/align.el (align-rules-list): Change to work without `C-u'.
(align): Doc clarification.
(align-regexp): Ditto, and change default `C-u' regexp from
"\\(\\s-*\\)" to "\\(\\s-*\\)" so that it'll make things columnar
if the user just hits RET through all the defaults.
Alan Third [Sun, 17 Oct 2021 18:30:59 +0000 (19:30 +0100)]
Fix inset rectangle corners when sides aren't drawn (bug#51251)
* src/nsterm.m (ns_draw_relief): Make the inner rectangle line up with
the outer rectangle's edges where the edges aren't drawn.
Mattias Engdegård [Tue, 19 Oct 2021 10:03:15 +0000 (12:03 +0200)]
Improve TCO test coverage
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs--labels):
Exercise `cond` in tail position in two different ways.
Lars Ingebrigtsen [Tue, 19 Oct 2021 18:36:48 +0000 (20:36 +0200)]
Make downcasing unibyte strings in Turkish less wrong
* src/casefiddle.c (ascii_casify_character): New function.
(do_casify_unibyte_string): Use it to make downcasing tr_TR.UTF-8
"I" less wrong.
(Fdowncase): Mention caveats.
(Fupcase):
(Fcapitalize):
(Fupcase_initials): Refer to details in `downcase'.
(syms_of_casefiddle): Define more symbols.
Jan Synacek [Mon, 18 Oct 2021 10:34:38 +0000 (12:34 +0200)]
Don't use color escape sequences in vc-git-expanded-log-entry
* lisp/vc/vc-git.el (vc-git-expanded-log-entry): Use '--no-color' flag
in git invocation. (Bug#51262)
Copyright-paperwork-exempt: yes
Michael Albinus [Tue, 19 Oct 2021 16:50:12 +0000 (18:50 +0200)]
Code cleanup in tramp-tests.el
* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process)
(tramp-test30-make-process): Extend tests.
(tramp--test-out-of-band-p): New defun.
(tramp--test-windows-nt-and-out-of-band-p)
(tramp-test42-utf8-with-stat, tramp-test42-utf8-with-perl)
(tramp-test42-utf8-with-ls): Use it.
(tramp--test-windows-nt-or-smb-p): Use `tramp--test-windows-nt-p'.
Michael Albinus [Tue, 19 Oct 2021 16:49:38 +0000 (18:49 +0200)]
; etc/NEWS fix wording
Glenn Morris [Tue, 19 Oct 2021 14:50:35 +0000 (07:50 -0700)]
Merge from origin/emacs-28
d742cc3c20 (origin/emacs-28) ; etc/NEWS: Fix typos
28db29590f * admin/notes/unicode: Refer to Unicode's emoji-style.txt
9bd2f59db6 Handle VS-16 correctly for non-emoji codepoints
e55e2d4a11 ; * etc/NEWS: Minor copyedit about 'repeat-mode'.
380981ddb5 Adjust bug-reference-bug-regexp default values to match on...
c1cf95a0e1 ; * doc/emacs/windows.texi: Doc fix.
98eb6d783a Fix a typo in emacs-lisp-intro.texi
f5b8f626e3 Fix some Tramp problems
fc988a7113 Adapt Tramp manual
0c241043a8 Further fixes to Elisp manual
8e8a920246 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): ...
5a3242301d Rename tab-bar-drag-maybe to tab-bar--dragging-in-progress
bb4209a5a5 Fix xref elisp identifier namespace mistake
# Conflicts:
# etc/NEWS
Dmitry Gutov [Tue, 19 Oct 2021 14:42:25 +0000 (17:42 +0300)]
* lisp/progmodes/xref.el: Bump version.
Dmitry Gutov [Tue, 19 Oct 2021 14:32:35 +0000 (17:32 +0300)]
Fix Emacs 26 support in xref.el
* lisp/progmodes/xref.el (xref--defstruct): New macro.
(xref-item, xref-match-item): Use it in definitions.
Michael Albinus [Tue, 19 Oct 2021 13:06:30 +0000 (15:06 +0200)]
; etc/NEWS: Fix typos
Robert Pluim [Mon, 18 Oct 2021 12:52:49 +0000 (14:52 +0200)]
* admin/notes/unicode: Refer to Unicode's emoji-style.txt
Robert Pluim [Mon, 18 Oct 2021 09:51:10 +0000 (11:51 +0200)]
Handle VS-16 correctly for non-emoji codepoints
* admin/unidata/blocks.awk: Remove emoji overrides for codepoints with
Emoji_Presentation = No, they're no longer necessary.
* lisp/composite.el: Remove #xFE0F (VS-16) from the range handled by
`compose-gstring-for-variation-glyph' so it can be handled by
`font_range'.
* src/composite.c (syms_of_composite): New variable
`auto-composition-emoji-eligible-codepoints'.
* admin/unidata/emoji-zwj.awk: Generate value for
`auto-composition-emoji-eligible-codepoints'. Add
`composition-function-table' entries for 'codepoint + U+FE0F' for
them.
* src/font.c (codepoint_is_emoji_eligible): New function to check if
we should try to use the emoji font for a codepoint.
(font_range): Use it.
Eli Zaretskii [Tue, 19 Oct 2021 12:12:43 +0000 (15:12 +0300)]
; * etc/NEWS: Minor copyedit about 'repeat-mode'.
Michael Albinus [Tue, 19 Oct 2021 07:43:34 +0000 (09:43 +0200)]
* etc/NEWS: Move sql entry up. Fix typos.
Tassilo Horn [Tue, 19 Oct 2021 05:05:18 +0000 (07:05 +0200)]
Adjust bug-reference-bug-regexp default values to match only at beg of word
Previously, the "bug 1" in "(debug 1)" has also been highlighted.
* lisp/progmodes/bug-reference.el (bug-reference-bug-regexp)
(bug-reference--setup-from-vc-alist,bug-reference-setup-from-mail-alist)
(bug-reference-setup-from-irc-alist): Adjust bug-reference-bug-regexp
default values to match only at the beginning of a word.
Michael R. Mauger [Tue, 19 Oct 2021 04:18:17 +0000 (00:18 -0400)]
SQL mode supports sending passwords in process
Michael R. Mauger [Tue, 12 Oct 2021 00:04:46 +0000 (20:04 -0400)]
Added sql-add-connection
* lisp/progmodes/sql.el (sql-add-connection): Added.
Pedro Mauro [Tue, 19 Oct 2021 03:14:07 +0000 (05:14 +0200)]
; * doc/emacs/windows.texi: Doc fix.
* doc/emacs/windows.texi (Window Choice): Make example a valid
alist (bug#51274).
Lars Ingebrigtsen [Tue, 19 Oct 2021 03:07:51 +0000 (05:07 +0200)]
Make `lookup-key' understand the new key sequence syntax
* src/keymap.c (possibly_translate_key_sequence): Factored out
into own function.
(Fdefine_key):
(Flookup_key): Use it.
Lars Ingebrigtsen [Tue, 19 Oct 2021 02:50:59 +0000 (04:50 +0200)]
Error out on invalid `define-keymap' keywords
* lisp/subr.el (define-keymap--define): Error out on invalid
keywords (bug#51268).
* lisp/emacs-lisp/byte-opt.el (byte-optimize-define-keymap): Check
keywords at compile time.
* lisp/vc/cvs-status.el (cvs-status-mode-map): Fix keyword.
Lars Ingebrigtsen [Mon, 18 Oct 2021 16:55:48 +0000 (18:55 +0200)]
Fix diff-mode-shared-map
* lisp/vc/diff-mode.el (diff-mode-shared-map): Fix syntax error in
`defvar-keymap' change.
Stefan Kangas [Tue, 19 Oct 2021 00:36:06 +0000 (02:36 +0200)]
Fix a typo in emacs-lisp-intro.texi
* doc/lispintro/emacs-lisp-intro.texi (Lisp Atoms): Fix typo.
Reported by Mor Zahavi <morzahavi@me.com>. (Bug#51271)
Stefan Kangas [Mon, 18 Oct 2021 20:35:40 +0000 (22:35 +0200)]
Add tests for image.c
* test/src/image-tests.el: New file.
Michael Albinus [Mon, 18 Oct 2021 17:54:13 +0000 (19:54 +0200)]
Fix some Tramp problems
* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
Use `tramp-adb-handle-file-executable-p' and
`tramp-adb-handle-file-readable-p'.
(tramp-adb-handle-file-executable-p)
(tramp-adb-handle-file-readable-p): New defuns.
(tramp-adb-handle-file-writable-p): Simplify.
(tramp-adb-handle-make-process): Handle :filter being t.
(tramp-adb-find-test-command): Remove.
* lisp/net/tramp-sh.el (tramp-sh-handle-file-readable-p):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-readable-p):
* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
Use `tramp-handle-file-readable-p'.
(tramp-gvfs-handle-file-executable-p): Do not check whether file
exists, this is done in `tramp-check-cached-permissions'.
(tramp-gvfs-handle-file-readable-p): Remove.
* lisp/net/tramp.el (tramp-error): Move binding of `inhibit-message' ...
(tramp-signal-hook-function): ... here.
(tramp-handle-access-file): Rewrite.
(tramp-handle-file-readable-p): New defun.
(tramp-handle-make-process): Setting :filter to t works since
Emacs 29.1 only.
* test/lisp/net/tramp-tests.el (tramp-test17-insert-directory)
(tramp-test18-file-attributes): Extend tests.
Michael Albinus [Mon, 18 Oct 2021 17:53:34 +0000 (19:53 +0200)]
Adapt Tramp manual
* doc/misc/tramp.texi: Use @uref instead of @url.
(Frequently Asked Questions): Adapt ELPA references.
Martin Rudalics [Mon, 18 Oct 2021 17:18:42 +0000 (19:18 +0200)]
Further fixes to Elisp manual
* doc/lispref/frames.texi (Frame Layout): Index "tab bar" instead
of "internal tab bar".
(Implied Frame Resizing): Remove irritating hyphens.
* doc/lispref/windows.texi (Windows and Frames): Remove paragraph
relating 'minibuffer-window' to 'window-list'.
Alan Mackenzie [Mon, 18 Oct 2021 16:49:19 +0000 (16:49 +0000)]
* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): check type-start
Check type-start is non-nil at L659 of the function.
Juri Linkov [Mon, 18 Oct 2021 16:52:29 +0000 (19:52 +0300)]
Rename tab-bar-drag-maybe to tab-bar--dragging-in-progress
* lisp/tab-bar.el (tab-bar--event-to-item, tab-bar-mouse-down-1)
(tab-bar-mouse-move-tab): Rename tab-bar-drag-maybe to
tab-bar--dragging-in-progress.
* src/xdisp.c (note_mouse_highlight): Rename tab_bar_drag_maybe to
tab_bar__dragging_in_progress.
Mattias Engdegård [Mon, 18 Oct 2021 15:06:22 +0000 (17:06 +0200)]
Fix xref elisp identifier namespace mistake
Pressing `M-.` on ALPHA in
(let ((ALPHA BETA)) ...)
would incorrectly search for ALPHA as a function rather than a variable.
* lisp/progmodes/elisp-mode.el (elisp--xref-infer-namespace): Fix logic.
* test/lisp/progmodes/elisp-mode-tests.el
(elisp-mode-infer-namespace): Add test case.
Glenn Morris [Mon, 18 Oct 2021 14:50:26 +0000 (07:50 -0700)]
Merge from origin/emacs-28
c163fd9260 (origin/emacs-28) Minor fixes for recent changes in ELisp ...
fefada4816 Fix example in calc manual
e74e17c1f0 Rewrites of Elisp manual including tab-bar and tab-line ch...
3b138917b7 ; * INSTALL: Fix typo.
ce71446585 * lisp/tab-bar.el: Improve docstrings (bug#51247)
ace4ce16a3 * lisp/tab-bar.el (tab-bar-mouse-move-tab): Don't drag tab...
04716ca48f Add tab-bar-drag-maybe for indication of tab dragging (bug...
81e3697600 * lisp/tab-bar.el: Add a new tab on [mouse-1] instead of [...
a191d3c725 Add new and fix existing docstrings in tab-bar.el and tab-...
77dbaedadc Add tab bar support to the nextstep port
7b6fb486c2 Fix potential buffer overflow (bug#50767)
ed9f5546aa Improve doc strings in tab-line.el
686a03ee22 More documentation fixes in tab-bar.el
35920791df Improve doc strings of tab-bar commands
2d15db6e89 Fix a semantic test on some macOS machines
ac6ac76e3a Update to Org 9.5-57-g9bc3a2
Eli Zaretskii [Mon, 18 Oct 2021 14:13:18 +0000 (17:13 +0300)]
Minor fixes for recent changes in ELisp manual
* doc/lispref/windows.texi (Basic Windows, Windows and Frames)
(Selecting Windows):
* doc/lispref/objects.texi (Window Type):
* doc/lispref/frames.texi (Input Focus, Frame Layout): Fix
wording, punctuation, and indexing.
Lars Ingebrigtsen [Mon, 18 Oct 2021 13:56:51 +0000 (15:56 +0200)]
Fix example in calc manual
* doc/misc/calc.texi (Arithmetic Tutorial): Fix sign in the
example (bug#51265).
Miha Rihtaršič [Mon, 18 Oct 2021 13:24:54 +0000 (15:24 +0200)]
*-watch-for-password-prompt: Use run-at-time to read password
* lisp/comint.el (comint-watch-for-password-prompt):
* lisp/eshell/esh-mode.el (eshell-watch-for-password-prompt):
* lisp/term.el (term-watch-for-password-prompt):
Use run-at-time to read a password (bug#51263).
Lars Ingebrigtsen [Mon, 18 Oct 2021 09:35:51 +0000 (11:35 +0200)]
Add some defvar indent tests
Lars Ingebrigtsen [Mon, 18 Oct 2021 08:48:45 +0000 (10:48 +0200)]
Mention that we now install the pdmp file with a fingerprinted name
Lars Ingebrigtsen [Mon, 18 Oct 2021 08:44:28 +0000 (10:44 +0200)]
Add indentation rules for DEFUN's def* functions
Lars Ingebrigtsen [Mon, 18 Oct 2021 08:40:08 +0000 (10:40 +0200)]
Update elp-not-profilable
* lisp/emacs-lisp/elp.el (elp-not-profilable): Update list of
denied functions (bug#40335).
Lars Ingebrigtsen [Mon, 18 Oct 2021 08:00:20 +0000 (10:00 +0200)]
Remove the "def" indentation heuristic
* lisp/emacs-lisp/lisp-mode.el (lisp-indent-function): Don't
indent function calls with names that that start with "def"
specially (bug#43329).
Martin Rudalics [Mon, 18 Oct 2021 07:58:48 +0000 (09:58 +0200)]
Rewrites of Elisp manual including tab-bar and tab-line changes
* doc/lispref/buffers.texi (Current Buffer, Buffer List): Update
references to 'selected-window'.
* doc/lispref/elisp.texi (Top): Move up Selecting Windows section
in front of Window Sizes section.
* doc/lispref/frames.texi (Creating Frames): Say window system
instead of windowing system.
(Frame Layout): Add Tab Bar to layout.
(Layout Parameters): Add 'tab-bar-lines'.
(Input Focus): Say window system window instead of window
manager window. Fix reference to 'selected-window'.
* doc/lispref/objects.texi (Window Type): Minor rewrite.
* doc/lispref/windows.texi (Basic Windows): Rewrite. Settle on
term 'window system window' for disambiguation with our windows.
Move 'selected-window' description to Selecting Windows section.
Move schematic of window structure here. Use 'decorations' for
objects outside the window body. Say that the areas reserved
for continuation and truncation glyphs, vertical dividers and
line numbers are part of the window body.
(Windows and Frames): Minor rewrite, adding and fixing some
cross references. Move live window schematic to 'Basic Windows'
section.
(Selecting Windows): Move section in front of Window Sizes
section. Move description of 'selected-window' here. Move up
description of 'frame-selected-window' and
'set-frame-selected-window'. Update and move description of
'window-bump-use-time' here.
(Window Sizes): Throughout use the term 'decorations' instead of
enumerating them individually. Add 'window-tab-line-height'
description.
(Resizing Windows): Again use the term 'decorations' instead of
enumerating them individually.
(Splitting Windows): Minor fix.
(Cyclic Window Ordering): Improve descriptions of 'get-lru-window'
and 'get-mru-window'. Move 'window-bump-use-time' to Selecting
Windows section.
(Coordinates and Windows, Window Configurations): Once more use
the term 'decorations' instead of enumerating them individually.
* src/window.c (Fwindow_bump_use_time): Move after
'window-use-time'. Make it work for live windows only. Make
WINDOW argument optional. Update doc-string.
Lars Ingebrigtsen [Mon, 18 Oct 2021 07:44:24 +0000 (09:44 +0200)]
Fontify :doc keywords as documentation
* lisp/emacs-lisp/lisp-mode.el (lisp-string-after-doc-keyword-p):
Extend to :doc, too (bug#51230).
Daniel Martín [Sat, 16 Oct 2021 18:24:19 +0000 (20:24 +0200)]
New option show-paren-context-when-offscreen
* lisp/simple.el (blink-paren-open-paren-line-string): Extract
functionality that shows the open paren line in the echo area into its
own function, to reuse it from paren.el.
(blink-matching-open): Use blink-paren-open-paren-line-string.
* lisp/paren.el (show-paren-context-when-offscreen): New option
show-paren-context-when-offscreen.
(show-paren-function): Implement it using
blink-paren-open-paren-line-string.
* lisp/emacs-lisp/eldoc.el (eldoc-display-message-no-interference-p):
Make sure the feature works well with eldoc.
* test/lisp/paren-tests.el (paren-tests-open-paren-line): Test
blink-paren-open-paren-line-string.
* doc/emacs/programs.texi (Matching): Update the documentation.
* etc/NEWS: And announce the new feature.
Lars Ingebrigtsen [Mon, 18 Oct 2021 07:22:22 +0000 (09:22 +0200)]
Fix possible build issue in pcvs.el and diff-mode.el
* lisp/vc/pcvs.el (easy-mmode):
* lisp/vc/diff-mode.el (easy-mmode): Require.
Protesilaos Stavrou [Mon, 18 Oct 2021 07:07:03 +0000 (10:07 +0300)]
Add sample user function in eww-auto-rename-buffer
* eww.el (eww-auto-rename-buffer): Update doc string.
Fix bug#51176.
Co-authored-by: Abhiseck Paira <abhiseckpaira@disroot.org>
Co-authored-by: Protesilaos Stavrou <info@protesilaos.com>
Lars Ingebrigtsen [Mon, 18 Oct 2021 07:13:51 +0000 (09:13 +0200)]
Fix build issue with smerge-mode
* lisp/vc/smerge-mode.el (easy-mmode): Require.
Lars Ingebrigtsen [Mon, 18 Oct 2021 06:58:02 +0000 (08:58 +0200)]
Allow :filter t in make-process to work as with set-process-filter
* src/process.c (create_process):
(create_pty):
(Fmake_pipe_process):
(Fmake_serial_process): Don't add the read_fd if the filter is t
(which means that we don't accept output from the filter).
Lars Ingebrigtsen [Mon, 18 Oct 2021 05:37:08 +0000 (07:37 +0200)]
Do kbd-valid-p prefix comparisons case-sensitively
* lisp/subr.el (kbd-valid-p): Compare case-sensitively.
Stefan Kangas [Mon, 18 Oct 2021 00:35:33 +0000 (02:35 +0200)]
; * INSTALL: Fix typo.
Stefan Kangas [Sat, 16 Oct 2021 12:39:04 +0000 (14:39 +0200)]
Recommend against using uce.el
* lisp/mail/uce.el (uce-reply-to-uce): Recommend against its use on
the first invocation. (Bug#46472)
Stefan Kangas [Sun, 17 Oct 2021 23:49:39 +0000 (01:49 +0200)]
* lisp/erc/erc-compat.el (format-spec): Remove redundant require.
Stefan Kangas [Sun, 17 Oct 2021 23:33:21 +0000 (01:33 +0200)]
Prefer defvar-local in MH-E
* lisp/mh-e/mh-comp.el (mh-insert-auto-fields-done-local):
* lisp/mh-e/mh-e.el (mh-thread-scan-line-map)
(mh-thread-scan-line-map-stack):
* lisp/mh-e/mh-identity.el (mh-identity-pgg-default-user-id)
(mh-identity-local):
* lisp/mh-e/mh-scan.el (mh-cmd-note):
* lisp/mh-e/mh-seq.el (mh-non-seq-mode-line-annotation):
* lisp/mh-e/mh-thread.el (mh-thread-id-hash)
(mh-thread-subject-hash, mh-thread-id-table)
(mh-thread-index-id-map, mh-thread-id-index-map)
(mh-thread-subject-container-hash, mh-thread-duplicates)
(mh-thread-history): Prefer defvar-local.
Stefan Kangas [Sun, 17 Oct 2021 23:28:49 +0000 (01:28 +0200)]
Make thumbs-image-type obsolete
* lisp/thumbs.el (thumbs-image-type): Make into obsolete function
alias for 'image-type-from-file-name'. Update callers.
Lars Ingebrigtsen [Sun, 17 Oct 2021 23:27:27 +0000 (01:27 +0200)]
Use define-keymap in pcvs and pcvs-defs.el
* lisp/vc/pcvs-defs.el (cvs-mode-diff-map):
* lisp/vc/pcvs.el (pcvs-defs):
(cvs-mode-diff-map): Move maps to pcvs (because the commands are
defined in pcvs.el and #' gives us checking) and transform from
easy-mmode-defmap to define-keymap.
Lars Ingebrigtsen [Sun, 17 Oct 2021 22:49:56 +0000 (00:49 +0200)]
Convert diff-mode.el from easy-mmode-defmap to define-keymap
* lisp/vc/diff-mode.el (diff-mode-shared-map, diff-mode-map)
(diff-minor-mode-map): Convert from easy-mmode-defmap to
defvar-keymap.
Lars Ingebrigtsen [Sun, 17 Oct 2021 22:35:32 +0000 (00:35 +0200)]
Convert smerge-mode.el from easy-mmode-defmap to define-keymap
* lisp/vc/smerge-mode.el (smerge-basic-map, smerge-mode-map):
Convert form easy-mmode-defmap to define-keymap.
Lars Ingebrigtsen [Sun, 17 Oct 2021 20:27:13 +0000 (22:27 +0200)]
Add kbd examples to the doc string
* lisp/subr.el (kbd): Add some examples to the doc string.
Lars Ingebrigtsen [Sun, 17 Oct 2021 20:14:30 +0000 (22:14 +0200)]
Reverse the edmacro-parse-keys/kbd vector/string logic
* lisp/edmacro.el (edmacro-parse-keys): Convert to a vector if
needed.
* lisp/subr.el (kbd): Remove the NEED-VECTOR parameter.
Lars Ingebrigtsen [Sun, 17 Oct 2021 19:49:43 +0000 (21:49 +0200)]
Allow <mouse-1> in kbd-valid-p
* lisp/subr.el (kbd-valid-p): Allow (kbd-valid-p "<mouse-1>").
Lars Ingebrigtsen [Sun, 17 Oct 2021 19:29:59 +0000 (21:29 +0200)]
Reinstate defvar-keymap expansion
* lisp/emacs-lisp/byte-opt.el
(byte-optimize-define-keymap--define): Make more robust.
Lars Ingebrigtsen [Sun, 17 Oct 2021 19:06:26 +0000 (21:06 +0200)]
Back out `define-keymap' optimization -- it leads to a build error